\chapter{Model de base de dades}

El model de dades complet es mostra en la figura següent:

\begin{figure}[H]
\centering
\includegraphics[width=1.2\textwidth]{imatges/ModelBBDD.png}
\caption{Relacions entre taules}
\end{figure}

Les taules que comencen per la lletra 'M' son taules mestres que contenen
informació mestra, és a dir, d'infraestructura. Són les taules que s'hauràn de
modificar en cas de voler extendre les funcionalitats del sistema.

Les taules que comencen per la lletra 'D' son taules de dades 'volàtils'.
Aquestes taules disposen totes d'indexos per tal de fer més efectiu l'access per
al Sistema Gestor i per tant fer més usable l'aplicació.

En les pròximes seccions es detallen les més importants.

\section{Definició de taules}

\textbf{DADAPTATION}\\
Taula principal del model. Conté informació sobre l'adaptació.
\begin{itemize}
  \item \emph{IDADAP} Identificador únic de cada adaptació. ID principal del
  model
  \item \emph{IDUSU} Identificador del perfil d'usuari
  \item \emph{IDAPP} Identificador del perfil d'aplicació
  \item \emph{IDWURFL} Correspon amb la ID del fitxer de WURFL per al
  dispositiu seleccionat.
  \item \emph{ADAP} Conté l'aplicació amb el component client injectat
\end{itemize}

\textbf{DDIS}\\
Taula on es defineixen les discapacitats per a cada usuari. Està relacionada amb
DUSU mitjançant DDISUSU.
\begin{itemize}
  \item \emph{IDDIS} Identificador de discapacitat
  \item \emph{CODDIS} Codi de l'àmbit de discapacitat
  \item \emph{CODPART} Codi de part afectada de la discapacitat
  \item \emph{CODTIPO} Codi del tipus de discapacitat
  \item \emph{PERCENT} Percentatge d'afectació
\end{itemize}


\textbf{DUSU}\\
Taula on es guarda l'informació de l'usuari.
\begin{itemize}
  \item \emph{IDUSU} Identificador de l'usuari
  \item \emph{NIF} NIF de l'usuari
  \item \emph{CODPAIS} Codi del pais de l'usuari
  \item \emph{CODSEX} Codi del sexe de l'usuari
  \item \emph{CODIDIOMA} Codi de l'idioma de l'usuari
\end{itemize}


\textbf{DLOG}\\
Taula on s'enmagatzemen els logs. 
\begin{itemize}
  \item \emph{IDLOG} Identificador de log
  \item \emph{RAWLOG} El log serialitzat
  \item \emph{DATE} Data en la que s'ha creat el log
  \item \emph{IDADAP} Clau forànea a IDADAP de DADAP
\end{itemize}

\textbf{DINFERENCERULES}\\
Taula on s'enmagatzemen les regles per a una adaptació en concret. 
\begin{itemize}
  \item \emph{IDRULE} Identificador de regla
  \item \emph{NAME} Nom de la regla
  \item \emph{ACTIVE} Indicador de si la regla esta activa o no
  \item \emph{CONTENT} La regla
  \item \emph{IDADAP} Clau forànea a IDADAP de DADAP 
\end{itemize}

\textbf{DPROPSET}\\
Taula on s'enmagatzemen les propostes generades. Esta relacionada amb DADAP
mitjançant DADAPPROPSET.
\begin{itemize}
  \item \emph{IDPROPSET} Identificador de la proposta
  \item \emph{CONSTRAINTS} Restriccions a complir
  \item \emph{CHANGES} Canvis a aplicar
  \item \emph{RAWPROPSET} Contingut de la proposta serialitzat
\end{itemize}